Many enterprises find it necessary and/or desirable to provide technical support for their products. This technical support may be provided to personnel within the enterprise itself, or the technical support may be provided to entities which interact with the enterprise (e.g., to customers who purchase product from the enterprise).
It should be understood that by the term “technical support”, what is meant is support being provided by a person of higher expertise to a person of lesser expertise. By way of example but not limitation, this could be a product expert assisting a new user; or an Internal Revenue Service customer support expert assisting a taxpayer filing an income tax return; or a corporate database expert assisting another employee in accessing a corporate database; or a retailer providing on-floor support to a customer for the purpose of product selection. Also, it should be appreciated that by the term “product”, what is meant is both goods and/or services. And the words “customer”, “user” or “clients” may be used to indicate end-users who may be a customer, an employee, a partner employee, or an agent of a company.
Unfortunately, technical support is expensive. Automating technical support, even partially, offers substantial cost savings. Significantly, the majority (84%, according to one study) of customer issues have been dealt with before. Thus, significant efforts have been made to (i) capture the knowledge base associated with recurring customer questions, and (ii) provide some sort of automated technical support using that knowledge base.
Unfortunately, it is generally very difficult to accurately capture and analyze the knowledge base associated with recurring customer questions. In addition, it is also generally very difficult to provide automated technical support which provides a satisfactory experience for the customer. Both of these difficulties are primarily due to the fact that automated human language analysis is extremely difficult, even when the domain of discourse is restricted and technical. Thus, systems that try to automate the creation of a knowledge base associated with recurring customer questions tend to be quite faulty, since they generally cannot reliably analyze the human language dialogue taking place between technical support and the customer. Furthermore, systems which try to provide automated technical support using a knowledge base generally fail to provide a satisfactory experience to the customer, since they generally cannot reliably establish a natural, efficient and accurate human language dialogue with the customer. In essence, these prior art systems do not establish a dialogue—they only go one level or question deep. If this does not yield the desired answer, the unsatisfied user must “retype” the question with more information.
Systems which try to combine both of the aforementioned tasks (i.e., to simultaneously provide automated technical support to the customer while simultaneously capturing the knowledge base associated with recurring customer questions) merely compound the difficulties associated with each separate task and have generally proven to be highly unreliable and unsatisfactory to the users.
Thus there is a need for a new and improved system for simultaneously (i) providing highly automated technical support to the customer while (ii) capturing the knowledge base associated with recurring customer questions and making it available for re-use on a continuous basis.